package com.yby6.common.core.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import lombok.*;
import com.yby6.common.core.BaseEntity;

import java.util.Collections;
import java.util.Date;
import java.util.List;

/**
 * ClassName: Loginfo
 * Description: 杨不易网站 :www.yangbuyi.top
 * date: 2021/5/13
 *
 * @author TeouBle
 * @author Yang Shuai
 * @since JDK 1.8
 **/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class SysUser extends BaseEntity {
    private Long id;

    /**
     * 账号
     */
    private String username;

    /**
     * 微信小程序openid
     */
    @TableField(value = "openid")
    private String openId;

    /**
     * 密码
     */
    private String password;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 昵称
     */
    private String nickName;

    /**
     * 头像
     */
    private String header;

    /**
     * 备注信息
     */
    private String note;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 最后登录时间
     */
    private Date loginTime;

    /**
     * 帐号启用状态：0 正常 1 停用 2 删除
     */
    private Integer status;

    /**
     * 是否删除，1是0否
     */
    private Integer deleted;

    /**
     * 是否是超级管理员
     */
    private Integer isAdmin;

    /**
     * 用户注册类型
     * 注册类型 系统注册: 0 、  QQ: 1 、GitHub: 2 、 Gitee: 3 、face： 4
     */
    private Integer type;

    /**
     * 用户角色
     */
    @TableField(exist = false)
    private List<String> roleIds = Collections.emptyList();

    /**
     * 用户权限
     */
    @TableField(exist = false)
    private List<String> permissions = Collections.emptyList();

    private static final long serialVersionUID = 1L;
}